package com.db.williamchart.data.configuration;

import com.db.williamchart.data.AxisType;
import com.db.williamchart.data.Paddings;
import com.db.williamchart.data.Scale;

public class LineChartConfiguration extends ChartConfiguration {

    private Float lineThickness;
    private int pointsDrawableWidth;
    private int pointsDrawableHeight;
    private int fillColor;
    private int[] gradientFillColors;
    private int clickableRadius;

    public LineChartConfiguration(
            int width,
            int height,
            Paddings paddings,
            AxisType axis,
            Float labelSize,
            Scale scale,
            String labelsFormatter,
            Float lineThickness,
            int pointsDrawableWidth,
            int pointsDrawableHeight,
            int fillColor,
            int[] gradientFillColors,
            int clickableRadius
    ) {
        super(width, height, paddings, axis, labelSize, scale, labelsFormatter);
        this.lineThickness = lineThickness;
        this.pointsDrawableWidth = pointsDrawableWidth;
        this.pointsDrawableHeight = pointsDrawableHeight;
        this.fillColor = fillColor;
        this.gradientFillColors = gradientFillColors;
        this.clickableRadius = clickableRadius;
    }

    public Float getLineThickness() {
        return lineThickness;
    }

    public void setLineThickness(Float lineThickness) {
        this.lineThickness = lineThickness;
    }

    public int getPointsDrawableWidth() {
        return pointsDrawableWidth;
    }

    public void setPointsDrawableWidth(int pointsDrawableWidth) {
        this.pointsDrawableWidth = pointsDrawableWidth;
    }

    public int getPointsDrawableHeight() {
        return pointsDrawableHeight;
    }

    public void setPointsDrawableHeight(int pointsDrawableHeight) {
        this.pointsDrawableHeight = pointsDrawableHeight;
    }

    public int getFillColor() {
        return fillColor;
    }

    public void setFillColor(int fillColor) {
        this.fillColor = fillColor;
    }

    public int[] getGradientFillColors() {
        return gradientFillColors;
    }

    public void setGradientFillColors(int[] gradientFillColors) {
        this.gradientFillColors = gradientFillColors;
    }

    public int getClickableRadius() {
        return clickableRadius;
    }

    public void setClickableRadius(int clickableRadius) {
        this.clickableRadius = clickableRadius;
    }
}
